iT邦幫忙

2024 iThome 鐵人賽

DAY 10
0
AI/ ML & Data

數據隱私:工具和風險系列 第 10

D10 - 聯邦學習Federated Learning 👽

  • 分享至 

  • xImage
  •  

昨天提到apple採用了一種分布式學習方法,現在來想像一下這個情況:兩個公司各自擁有的數據是商業機密,也可能是基於法條的關係,他們無法直接交換與合作,這時他們怎麼能夠在保護這些敏感數據的同時,合作訓練模型並進行分析?

蹦!聯邦學習(FL)🧙🏻!

與傳統的集中式機器學習有很大的不同,FL允許分佈在不同設備的數據在本地進行模型訓練,而不需要將數據移動到中央伺服器,簡單來說,便是去中心化,直接在分散的各裝置上訓練。

工作流程📮大致:

  1. 模型初始化:中央伺服器會首先生成一個初始的全局機器學習模型,並將這個模型分發到各個本地設備。可以是智能手機、個人電腦,或醫療機構內部的伺服器等。

  2. 本地訓練:每個設備基於其本地數據對模型進行訓練,數據永遠不會離開設備,從而減少數據洩露風險,而訓練過程通常使用隨機梯度下降(SGD)等優化算法,更新模型的參數。

  3. 模型參數上傳:本地訓練結束後,設備不會上傳訓練過程中的數據,而是只上傳「更新後的模型參數」或權重到中央伺服器,這個過程確保本地數據的隱私保護。

  4. 聚合模型更新:中央伺服器接收到來自不同設備的數據後,使用某些聚合算法(例如加權平均法)來匯總這些本地模型更新,生成一個新的全局模型,這個過程稱為「聯邦平均算法」(Federated Averaging,FedAvg)。

  5. 同步與重複:中央伺服器將更新後的全局模型再次分配給各個設備(這個過程會多次重複,直到模型的性能達到滿意的結果)。

它的特點包含 (1)能顯著減少網絡傳輸負擔 (2)讓每個用戶的設備利用其閒置時間來訓練模型,提高訓練模型效率 (3)常與差分隱私(Differential Privacy)技術相結合,比如:上傳更新模型之前,可以加入隨機噪音提高參數匿名性。

而一體兩面,它面臨的挑戰也不少,比如(1)不同設備的計算能力、存儲空間可能差異大,影響聯邦學習的訓練效率和同步過程(2)在模型參數的聚合過程中,仍可能面臨參數反向推理攻擊等威脅。

剛才提到的”FedAvg“🐇 是聯邦學習中常用的一種算法,它是隨機梯度下降(Stochastic Gradient Descent,SGD)在聯邦學習環境中的泛化版本,更適合分佈式環境下的非同步訓練和分散數據情景。
「泛化」主要體現在:

  • 本地多次迭代:FedAvg允許每個設備在進行多次訓練後才上傳結果,而FedSGD則是在每次計算梯度後立即上傳。
  • 直接平均模型參數:FedAvg直接對模型參數進行加權平均,而不是只對梯度,讓過程更加穩定和高效。
  • 優化通訊:FedAvg通過減少通訊次數來提高訓練效率,尤其適合設備計算能力和網絡狀況差異較大的分散式環境。

上一篇
D9 - Apple & Differential Privacy
下一篇
D11 - 數據生命周期管理
系列文
數據隱私:工具和風險30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言